Field
The described embodiments relate to techniques for testing system capabilities. More specifically, the described embodiments relate to techniques for testing system capabilities between an application layer and a data-link layer.
Related Art
Modern software applications often include multiple program modules or blocks of code that perform specific functions. Many of the program modules are interdependent. Consequently, in order for the overall application to execute appropriately, the constituent program modules typically need to execute correctly.
However, the execution of many program modules can depend on the availability of system resources, such as a communication network. When a network is unavailable, the associated program module may fail. In turn, this failure may affect the operation of other program modules. In the worst case, the overall application may fail.
But in an absence of an understanding of the underlying failure mechanism, it may be difficult if not impossible to take appropriate corrective or remedial action. Such application failures are often very frustrating to users and can degrade the user experience when using applications.
Note that like reference numerals refer to corresponding parts throughout the drawings. Moreover, multiple instances of the same part are designated by a common prefix separated from an instance number by a dash.